速報APP / 教育 / Bluetooth Arduino Carro Robot

Bluetooth Arduino Carro Robot

價格:免費

更新日期:2019-03-20

檔案大小:3.4M

目前版本:1.5

版本需求:Android 2.1 以上版本

官方網站:http://www.netandino.com

Email:ventas@netandino.com

聯絡地址:Jr. Victor Velez 339 Ind. Huaraz Ancash Perú

Bluetooth Arduino Carro Robot(圖1)-速報App

Controlar Arduino mediante bluetooth para cuatro principales movimientos. Puede servir para gruas, carros, Brazos y más.

Datos que envia el APP

Flecha N "Norte" = 'n'

Flecha S "Sur" = 's'

Flecha O "Oeste" = 'o'

Flecha E "Este" = 'e'

Flecha P "Parar" = 'p'

Boton Verde "Encender" = 'h'

Boton Rojo "Apagar" = 'l'

// INICIO DEL CÓDIGO

int Pecho = 4; // define Pecho como (echo) para el Ultrasonido

int Ptrig = 5; // define Ptrig como (trig) para el Ultrasonido

int LaIzAn = 6; // Giro Lado Izquierdo AntiHorario

int LaIzHo = 7; // Giro Lado Izquierdo Horario

int LaDeHo = 8; // Giro Lado Derecho Horario

int LaDeAn = 9; // Giro Lado Derecho AntiHorario

int Mov = 255; // Movimiento de motor (0-255)

int estado = 'l'; // inicia detenido

int duracion, distancia; // Para Calcular distacia

void setup() {

Serial.begin(9600); // inicia el puerto serial para comunicacion con el Bluetooth

pinMode(LaDeHo, OUTPUT);

pinMode(LaDeAn, OUTPUT);

pinMode(LaIzHo, OUTPUT);

pinMode(LaIzAn, OUTPUT);

pinMode(Pecho, INPUT); // define el pin 4 como entrada (echo)

pinMode(Ptrig,OUTPUT); // define el pin 5 como salida (trig)

}

void loop() {

if(Serial.available()>0){ // lee el bluetooth y almacena en estado

estado = Serial.read();

}

if(estado=='n'){ // Desplazar hacia Adelante "Norte"

analogWrite(LaDeAn, 0);

analogWrite(LaIzAn, 0);

analogWrite(LaDeHo, Mov);

analogWrite(LaIzHo, Mov);

}

if(estado=='s'){ // Desplazar hacia Atras "Sur"

analogWrite(LaDeAn, Mov);

analogWrite(LaIzAn, Mov);

analogWrite(LaDeHo, 0);

analogWrite(LaIzHo, 0);

}

if(estado=='o'){ // Desplazar hacia LadDerecha "Oeste"

analogWrite(LaDeAn, 0);

analogWrite(LaIzAn, 0);

analogWrite(LaIzHo, 0);

analogWrite(LaDeHo, Mov);}

if(estado=='e'){ // Desplazar hacia LadIzquierdo "Este"

analogWrite(LaDeAn, 0);

analogWrite(LaIzAn, 0);

analogWrite(LaIzHo, Mov);

analogWrite(LaDeHo, 0);

Bluetooth Arduino Carro Robot(圖2)-速報App

}

if(estado=='p'){ // Detenerse; Detiene los motores

analogWrite(LaDeAn, 0);

analogWrite(LaIzAn, 0);

analogWrite(LaDeHo, 0);

analogWrite(LaIzHo, 0);

}

if (estado =='h'){ // Boton Verde Modo automatico con sensor Ultrasonido

digitalWrite(Ptrig, HIGH); // genera el pulso de trigger por 10us

delay(0.01);

digitalWrite(Ptrig, LOW);

duracion = pulseIn(Pecho, HIGH); // Lee el tiempo del Echo

distancia = (duracion/2) / 29; // calcula la distancia en centimetros

delay(10);

if (distancia <= 15 && distancia >=2){ // si la distancia es menor de 15cm

analogWrite(LaDeAn, 0); // Parar los motores por 1/4 de segundo

analogWrite(LaIzAn, 0);

analogWrite(LaDeHo, 0);

analogWrite(LaIzHo, 0);

delay (250);

analogWrite(LaDeHo, 0);

analogWrite(LaIzHo, 0);

analogWrite(LaDeAn, Mov); // Reversa durante 1/2 de segundo

analogWrite(LaIzAn, Mov);

delay(500);

analogWrite(LaDeAn, 0); // Girar durante 1 segundo

analogWrite(LaIzAn, 0);

analogWrite(LaDeHo, 0);

analogWrite(LaIzHo, Mov);

delay(1000);

}

else{ // Si no hay obstaculos se desplaza al frente

analogWrite(LaDeAn, 0);

analogWrite(LaIzAn, 0);

analogWrite(LaDeHo, Mov);

analogWrite(LaIzHo, Mov);

}

}

if(estado=='l'){ // Boton OFF, detiene los motores.

analogWrite(LaDeAn, 0);

analogWrite(LaIzAn, 0);

analogWrite(LaDeHo, 0);

analogWrite(LaIzHo, 0);

}

}

//FIN DEL CÓDIGO

Más Manuales en http://manual.netandino.net

Detalles completos de carro

https://netandino.blogspot.com/2015/02/armar-carro-robot-controlado-por.html